The following patents are fully incorporated herein by reference: European Patent Application No. EP 0 923 011 A2 to Fujita et al. (xe2x80x9cRobot Systems and Robot Drive-controlling Methodsxe2x80x9d); International Pat. No. WO 00/45924 to Munch et al. (xe2x80x9cA Microprocessor Controlled Toy Building Element with Visual Programmingxe2x80x9d); U.S. Pat. No. 6,206,745 B 1 to Gabai et al. (xe2x80x9cProgrammable Assembly Toyxe2x80x9d) and International Pat. No. WO 00/45925 to Munch et al. (xe2x80x9cA Programmable Toy with Communication Meansxe2x80x9d).
This present invention relates generally to reconfigurable modular robotic systems, and more particularly this invention relates to microprocessor controlled robotic modules which may be reconfigured in multiples in a robotic toy construction system.
Modular robotic systems are those systems that are composed of modules which can be disconnected and reconnected in various arrangements to form a new system enabling new functionalities. This results in multiple possible robot structures for the same number of robotic modules. The user interconnects a certain number of modules to form a desired system based on the task to be accomplished by the system. Such systems tend to be more homogeneous than heterogeneous. That is, the system may have different types of modules, but the ratio of the number of module types to the total number of modules is low. In typical systems, one or more mechanisms, such as robotic arms, or manipulators, may be connected to a control system, which controls the motion and actions in accordance with a task specification and program. The motions may include point-to-point motion, or trajectory tracking motion. Actions may include end-effector control or interfacing to other systems such as tools and machines.
The controller for traditional robotic systems is a centralized unit which is connected to the robotic system through a multi-conductor cable system. Therefore, a system assembled from such modules is modular only in a limited mechanical sense, and its reconfigurability is limited. Because the control system electronics are centralized, the modules cannot be considered as intelligent single units, since they lack dedicated control processors and associated software. In the robotics industry programming by training is accomplished by manually posing backdrivable joints, active compliance of joints, in which the robot actively complies with manual guidance of the joints, or by manual control of the joints through a remote controller.
Robotic systems have also found applications within the toy industry. Toy development has proceeded from simple functions such as the playing of sounds in dolls, performance of simple patterns of movement in robots, to the development of robotic toys with sophisticated patterns of action and a form of behavior.
Toy building elements may perform different physical actions partially through programming the building element and partially by building a structure which consists of interconnected toy building elements of various types. Through a variety in types of building elements, there are numerous possibilities for forming structures and giving the structures various functions. The physical actions of the structures may comprise simple or relatively complex movements controlled by an electric actuator or may include the emission of light or sounds. The toy""s physical actions may be conditioned by the interaction of the toy with its surroundings, and the toy may be programmed to respond to physical contact with an object or to light, or possibly sound, and to change its behavior on the basis of the interaction. Such programmable toys are programmed by a central processing unit to make unconditioned as well as conditioned responses. In the toy industry, active joints often have torque-limiting connections between the drive mechanism and the joint in order to protect the drive mechanism from being overdriven and broken and to allow manual positioning even when no power is applied. The joints may or may not be backdrivable.
However, these toys require an external central processing unit programming the elements and directing its movement and also a variety of types of building elements. The object of this invention is to provide a modular robotic toy construction system having active modules, each with its own micro-controller, actuators, input and output devices with posable joints programmed by manually posing the joints and recording a succession of poses.
The following patents illustrate existing modular robotic elements or toys:
European Patent Application No. EP 0 923011 A2 to Fujita et al., titled xe2x80x9cRobot Systems and Robot Drive-controlling Methodsxe2x80x9d, teaches a robot system having multiple modules connected to a central processing unit (CPU) which controls overall operation of the assembled robot. The CPU is located in a body unit which also houses a serial bus host, a distributor, random access memory (RAM) and read only memory (ROM) in which is stored a program for making the assembled robot generate a variety of actions. Additional component units are connected to the body unit or to each other and communicate with the body unit through a serial bus. Each component unit includes electronic parts, a connection hub, and memory in which is stored motion information and the characteristic information of the electronic parts of the component unit.
International Patent Application No. WO 00/45924 to Munch et al., tided xe2x80x9cA Microprocessor Controlled Toy Building Element with Visual Programmingxe2x80x9d, discloses a programmable toy having a microprocessor which can execute instructions in the form of a program stored in memory. The microprocessor is adapted to control electrical and electro-mechanical units. A display, integrated with the toy, contains icons, each of which represents instructions for the microprocessor, and which can be activated by a user for programming of the microprocessor through a visual user interface.
International Patent No. WO 00/45925 to Munch et al., tided xe2x80x9cA Programmable Toy with Communication Meansxe2x80x9d, which teaches a microprocessor controlled toy building element which may be coupled to other building elements. For example, it may be coupled to a separate structure having an actuator and wheels to form a motorized toy vehicle. Each microprocessor executes instructions stored in a memory, which contains subprograms, which may be activated individually by specifying a list of subprogram calls. The toy has a transmitter for communicating instructions to a second toy.
U.S. Pat. No. 6,206,745 B1 to Gabai et al., titled xe2x80x9cProgrammable Assembly Toyxe2x80x9d, teaches a programmable assembly toy including both controllable and non-controllable toy elements. The non-controllable elements may be joined to define a structure. The controllable toy elements may interact with the structure and are controlled by a computer control system. The computer control system may be a personal computer equipped with a screen, sound card, hard disk and optionally a CD-ROM drive. A computer radio interface transmits signals via wireless transmission to the controllable toy elements, each of which has a power source, a toy control device, and input and output devices.
Briefly stated, and in accordance with one aspect of the present invention, there is provided an assemblage of robotic modules for a toy construction system. The assemblage includes a plurality of robotic modules, with each robotic module having memory capability, an actuator, a joint position sensor, communication means, and a central processing unit. The assemblage also includes a distributed control unit, which is defined at least in part by a plurality of individual central processing units, with each robotic joint module having at least one central processing unit.
In accordance with another aspect of the invention, there is provided a method for programming an assemblage of robotic joint modules for a toy construction system. Each robotic joint module includes a central processing unit, memory capability, an actuator, a joint position sensor, and communication means. The assemblage also includes a distributed control unit, which is defined at least in part by a plurality of individual central processing units, with each robotic joint module having at least one central processing unit. A signal is provided to the assemblage to initiate the programming sequence. After the robotic joint modules are moved to selected desired positions, each of the positions for each robotic joint module is stored within the central processing unit of that module. This process is repeated until a desired full sequence of positions is obtained.
In yet another aspect of the invention, there is provided a method for coordinating motions of an assemblage of robotic joint modules for a toy construction system. Each robotic joint module includes a central processing unit, memory capability, an actuator, a joint position sensor, and communication means. The assemblage also includes a distributed control unit, which is defined at least in part by a plurality of individual central processing units, with each robotic joint module having at least one central processing unit Each robotic joint module is programmed with its own sequence of positions. A signal is simultaneously provided to all robotic joint modules in the assemblage. The central processing unit within each of the robotic joint modules interprets the signal and directs the module to execute its own sequence of positions simultaneously with the other robotic joint modules in the assemblage.
In another aspect of the invention, there is provided a method for coordinating motions of multiple assemblages of robotic joint modules for a toy construction system. Each robotic joint module includes a central processing unit, memory capability, an actuator, a joint position sensor, and communication means. Each assemblage of robotic joint modules also includes a distributed control unit, which is defined at least in part by a plurality of individual central processing units, with each robotic joint module having at least one central processing unit. A first assemblage of robotic joint modules is programmed with a sequence of positions. The first assemblage of robotic joint modules provides a signal to the other assemblages of robotic joint modules. The central processing units included within each of the robotic joint modules within the other assemblages of robotic joint modules interprets the signal and directs the other assemblages to execute the sequence of positions.